package com.jinzhi.jzweb.service;

import com.jinzhi.common.domain.DictDO;
import com.jinzhi.common.utils.Result;
import com.jinzhi.jzweb.domain.StuSignUpComDO;
import com.jinzhi.jzweb.domain.TrackDrawDO;
import com.jinzhi.jzweb.domain.TrackDrawRegularDO;
import com.jinzhi.common.base.CoreService;

import java.util.List;
import java.util.Set;

/**
 *
 * <pre>
 * 赛道抽签表（可以对选手固定赛道）
 * </pre>
 * <small> 2023-10-24 18:52:05 | lance</small>
 */
public interface TrackDrawRegularService extends CoreService<TrackDrawRegularDO> {

    /**
     * 赛道抽签 （队选手固定赛道）
     */
    public Result<List<StuSignUpComDO>> selectDrawRegular(TrackDrawRegularDO trackDrawDTO);

    public List<DictDO> dictDOList(DictDO dictDTO);

    /**
     * 查询学校
     * @param trackDrawDTO
     * @return
     */
    public Result<Set<String>> listSchool(TrackDrawRegularDO trackDrawDTO);

    /**
     * 查询上一次的抽签结果
     * @param trackDrawDTO
     * @return
     */
    public TrackDrawRegularDO trackRegularList(TrackDrawRegularDO trackDrawDTO);


    /**
     * 抽学校
     */
    public Result<List<TrackDrawRegularDO>> trackRegularListSchool(TrackDrawRegularDO trackDrawDTO);

    /**
     * 抽选手
     * @param trackDrawDTO
     * @return
     */
    public Result<Set<String>> listSignCom(TrackDrawRegularDO trackDrawDTO);


    /**
     * 抽选手
     * @param trackDrawDTO
     * @return
     */
    public Result<List<TrackDrawRegularDO>> trackRegularListSignCom(TrackDrawRegularDO trackDrawDTO);

}
